# _*_ coding: UTF-8 _*_
# @Time     : 2021/10/26 14:42
# @Author   : 郑鲁明
# @Site     : http://www.hzdledu.cn/
# @File     : 函数的递归调用.py
# @Software : PyCharm

# 函数的递归调用
def foo1(n):  # 必须有形参
    if n == 1:  # 必须分支
        return 1  # 必须有返回
    else:
        return n + foo1(n - 1)  # 必须有自身调用


print(foo1(998))


# 递归实现1-100的累乘
def foo2(n):
    if n == 1:
        return 1
    else:
        return n * foo2(n - 1)


print(foo2(100))

# 调试语句
if __name__ == '__main__':  # '__main__'是本文件名，__name__是获取当前文件名
    print(foo1(5))
    print(foo2(5))